package com.njtoyo.taxi.admin.rest.presenter.customer;

import com.njtoyo.taxi.admin.mapper.master.enums.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
@ApiModel(value = "乘客详情查询")
public class CustomerDetailPresenter {
    private Long id;

    @ApiModelProperty(value = "姓名")
    private String name;

    @ApiModelProperty(value = "手机号码")
    private String mobileNumber;

    @ApiModelProperty(value = "地区表ID")
    private Long areaId;

    @ApiModelProperty(value = "地区名称")
    private String areaName;

    @ApiModelProperty(value = "乘客运营区id")
    private Long customerRegionId;

    @ApiModelProperty(value = "乘客运营区名称")
    private String customerRegionName;

    @ApiModelProperty(value = "来源")
    private CustomerFrom lastFrom;

    @ApiModelProperty(value = "是否冻结")
    private Boolean isFreezed;

    @ApiModelProperty(value = "是不是唯一的设备 0:unknown[未知],1:unique[唯一],2:not_unique[不唯一]")
    private CustomerHasUniqueUuid hasUniqueUuid;

    @ApiModelProperty(value = "设备信息")
    private String deviceInfo;

    @ApiModelProperty(value = "是否激活")
    private Boolean isActive;

    @ApiModelProperty(value = "激活时所在地区")
    private Long areaIdAtActivation;
    @ApiModelProperty(value = "激活时所在地区")
    private String areaNameAtActivation;

    @ApiModelProperty(value = "激活来源：0:wxmina,1:app,2:h5")
    private CustomerFrom activeFrom;

    @ApiModelProperty(value = "激活时间")
    private Date activacatedAt;


    @ApiModelProperty(value = "最后登录")
    private CustomerFrom originFrom;

    @ApiModelProperty(value = "创建时间")
    private Date createdAt;

//    @ApiModelProperty(value = "推广人数")
//    private String q;//Todo  推广人数未知
//    @ApiModelProperty(value = "推广者")
//    private String q;//Todo  推广者未知

    @ApiModelProperty(value = "会员ID")
    private Long memberId;

    @ApiModelProperty(value = "是否激活")
    private MemberState state;

    @ApiModelProperty(value = "会员等级")
    private MemberLevel level;

    @ApiModelProperty(value = "总积分")
    private Long point;

    @ApiModelProperty(value = "有效积分")
    private Long validPoint;

    @ApiModelProperty(value = "统计数额")
    private BigDecimal amount;

    @ApiModelProperty(value = "系统赠送金额")
    private BigDecimal donationAmount;

    @ApiModelProperty(value = "实际支付充值金额")
    private BigDecimal payAmount;

    @ApiModelProperty(value = "默认支付方法")
    private PayMethod defaultPayMethod;

    @ApiModelProperty(value = "修改时间")
    private Date updatedAt;
}
